if MACH_LOONGSON64

choice
	prompt "Machine Type"

config LEMOTE_FULOONG2E
	bool "Lemote Fuloong(2e) mini-PC"
	select ARCH_SPARSEMEM_ENABLE
	select CEVT_R4K
	select CSRC_R4K
	select SYS_HAS_CPU_LOONGSON2E
	select DMA_NONCOHERENT
	select BOOT_ELF32
	select BOARD_SCACHE
	select HW_HAS_PCI
	select I8259
	select ISA
	select IRQ_MIPS_CPU
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_SUPPORTS_HIGHMEM
	select SYS_HAS_EARLY_PRINTK
	select GENERIC_ISA_DMA_SUPPORT_BROKEN
	select CPU_HAS_WB
	select LOONGSON_MC146818
	help
	  Lemote Fuloong(2e) mini-PC board based on the Chinese Loongson-2E CPU and
	  an FPGA northbridge

	  Lemote Fuloong(2e) mini PC have a VIA686B south bridge.

config LEMOTE_MACH2F
	bool "Lemote Loongson 2F family machines"
	select ARCH_SPARSEMEM_ENABLE
	select BOARD_SCACHE
	select BOOT_ELF32
	select CEVT_R4K if ! MIPS_EXTERNAL_TIMER
	select CPU_HAS_WB
	select CS5536
	select CSRC_R4K if ! MIPS_EXTERNAL_TIMER
	select DMA_NONCOHERENT
	select GENERIC_ISA_DMA_SUPPORT_BROKEN
	select HAVE_CLK
	select HW_HAS_PCI
	select I8259
	select IRQ_MIPS_CPU
	select ISA
	select SYS_HAS_CPU_LOONGSON2F
	select SYS_HAS_EARLY_PRINTK
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_64BIT_KERNEL
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select LOONGSON_MC146818
	help
	  Lemote Loongson 2F family machines utilize the 2F revision of
	  Loongson processor and the AMD CS5536 south bridge.

	  These family machines include fuloong2f mini PC, yeeloong2f notebook,
	  LingLoong allinone PC and so forth.

config LOONGSON_MACH3X
	bool "Generic Loongson 3 family machines"
	select ARCH_SPARSEMEM_ENABLE
	select GENERIC_ISA_DMA_SUPPORT_BROKEN
	select BOOT_ELF32
	select BOARD_SCACHE
	select CSRC_R4K
	select CEVT_R4K
	select CPU_HAS_WB
	select HW_HAS_PCI
	select ISA
	select HT_PCI
	select I8259
	select IRQ_MIPS_CPU
	select NR_CPUS_DEFAULT_4
	select SYS_HAS_CPU_LOONGSON3
	select SYS_HAS_EARLY_PRINTK
	select SYS_SUPPORTS_SMP
	select SYS_SUPPORTS_HOTPLUG_CPU
	select SYS_SUPPORTS_NUMA
	select SYS_SUPPORTS_64BIT_KERNEL
	select SYS_SUPPORTS_HIGHMEM
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select LOONGSON_MC146818
	select ZONE_DMA32
	select LEFI_FIRMWARE_INTERFACE
	select PHYS48_TO_HT40
	help
		Generic Loongson 3 family machines utilize the 3A/3B revision
		of Loongson processor and RS780/SBX00 chipset.
endchoice

config CS5536
	bool

config CS5536_MFGPT
	bool "CS5536 MFGPT Timer"
	depends on CS5536 && !HIGH_RES_TIMERS
	select MIPS_EXTERNAL_TIMER
	help
	  This option enables the mfgpt0 timer of AMD CS5536. With this timer
	  switched on you can not use high resolution timers.

	  If you want to enable the Loongson2 CPUFreq Driver, Please enable
	  this option at first, otherwise, You will get wrong system time.

	  If unsure, say Yes.

config RS780_HPET
	bool "RS780/SBX00 HPET Timer"
	depends on LOONGSON_MACH3X
	select MIPS_EXTERNAL_TIMER
	help
	  This option enables the hpet timer of AMD RS780/SBX00.

	  If you want to enable the Loongson3 CPUFreq Driver, Please enable
	  this option at first, otherwise, You will get wrong system time.

	  If unsure, say Yes.

config LOONGSON_SUSPEND
	bool
	default y
	depends on CPU_SUPPORTS_CPUFREQ && SUSPEND

config LOONGSON_UART_BASE
	bool
	default y
	depends on EARLY_PRINTK || SERIAL_8250

config IOMMU_HELPER
	bool

config NEED_SG_DMA_LENGTH
	bool

config SWIOTLB
	bool "Soft IOMMU Support for All-Memory DMA"
	default y
	depends on CPU_LOONGSON3
	select IOMMU_HELPER
	select NEED_SG_DMA_LENGTH
	select NEED_DMA_MAP_STATE

config PHYS48_TO_HT40
	bool
	default y if CPU_LOONGSON3

config LOONGSON_MC146818
	bool
	default n

config LEFI_FIRMWARE_INTERFACE
	bool

endif # MACH_LOONGSON64
